Rad sa blokovima iz kategorije Input

Računar vrši obradu podataka koje dobija sa ulaza (od korisnika (pritisak na dugme,…) ili okoline (vrednosti koje su dobijene očitavanjem senzora)). U MakeCode-u postoji kategorija blokova koje omogućavaju rad sa ulaznim podacima, tačnije kategorija blokova koja omogućava programu da “vrši određene radnje” na osnovu podataka koje dobija od korisnika ili okoline.

Kategorija input sadrži blokove (naredbe), koji prihvataju podatke, koji se dobijaju od korisnika (klikom na dugme) ili okoline (očitavanje senzora).

_images/p8.png

Ulazni podaci se mogu dobiti putem pritiska na dugme A, B ili A+B, kao i očitavanjem vrednosti senzora za svetlost, temperaturu, akcelometar.

Želimo da napišemo program kojim se pritiskom na dugme A prikazuje temperatura (u Celzijusima).

    Q-7: Koliko će se puta izvršiti blok smešten u bloku onstart?

  • jednom.
  • Bravo! Blok onstart je jedan od osnovnih blokova, i blokovi u okviru njega se izvršavaju samo jednom dok se program ne zvrši.
  • beskonačno puta.
  • Blok forever je blok u okviru koga će se naredbe izvršavati beskonačan broj puta. Njegovo izvršavanje nikada se ne prekida samostalno. Prekida se klikom na dugme za prestanak rada programa (Stop dugme |stop|)..

Kao što smo videli u primerima iz prve lekcije, pokretanje i izvršavanje programa je zavisilo od toga koji od blokova onstart ili forever je primenjen.

Kako bismo mogli da omogućimo unošenje podataka, odnosno, da za pokretanje ili izvršavanje programa koristimo pritisak dugmeta A, iz kategorije input odaberemo blok: onbutton i iz padajuće liste odaberemo dugme A.

Blokom onbutton pokreće program i izvršavaju se svi blokovi unutar njega.

U radnu površinu prevlačimo blok on button ... pressed i u okviru njega prevlačimo blok kojim želimo da prikažemo vrednost temperature.

Za prikazivanje temperature koristimo blok shownumber iz kategorije Basic.

Po spajanju ovih blokova iz kategorije input biramo blok temperatura koji prevlačimo u polje naredbe show number određeno za broj. Blok temperatura čuva očitanu vrednost senzora za temperaturu koja je prikazana u celzijusima.

Konačan izgled programa:

_images/p10.png

Za testiranje programa koristićemo simulator. Klikom na dugme play program se izvršava.

    Q-8: Šta će biti okidač prikazivanja nivoa osvetljenja:

    _images/p11.png

    Mala pomoć: Blok level čuva očitanu vrednost senzora za svetlost koji se nalazi na displeju (led diodice igraju ulogu senzora svetlosti).

  • Kada je pritisnut taster A biće prikazana vrednost novoa osvetljenja.
  • Bravo! Pritiskom na taster A biće prikayana vrednost nivoa osvetljenja.
  • Kada je pritisnut taster B biće prikazana vrednost novoa osvetljenja.
  • Nije tačan odgovor! Pritiskom na taster A biće prikazana vrednost nivoa osvetljenja..
  • Kada su istovremeno pritisnuti taster A i B biće prikazana vrednost novoa osvetljenja.
  • NIje tačan odgovor! Pritiskom na taster A biće prikazana vrednost nivoa osvetljenja.

    Q-9: Pažljivo pogledaj izgled blokova. Koji od blokova predstavlja program kojim će se iscrtavati cvetić kada se napravi neki pokret (shake)?

    _images/p16.png
  • Blok A.
  • Nije tačan odgovor.
  • Blok B.
  • Nije tačan odgovor!
  • Blok C.
  • Odgovor je tačan.
  • Blok D.
  • Odgovor nije tačan.

    Q-10: Pažljivo pogledaj izgled bloka. Šta će biti okidač (ulaz) prikazivanja pravac postavljanja uređaja:

    _images/p17.png
  • Kada je pritisnut taster A biće prikazan smer.
  • Nije tačan odgovor!
  • Kada je pritisnut taster B biće prikazan smer.
  • Nije tačan odgovor!
  • Kada su istovremeno pritisnuti taster A i B biće prikazan smer.
  • Odgovor je tačan!

Zadatak. Pritiskom na dugme A programirati prikaz Smeška (koristeći showleds), pritiskom na dugme B prikazati vaše imena, a pritiskom na tastere A i B neka se prikaže vaše godina.

Uporedite svoje rešenje sa našim: https://makecode.microbit.org/_86uV0j7mt0hU